<?php

if (!defined('BASEPATH'))
    exit('No direct script access allowed');

/**
 * Moto Marca Modelo
 *
 * @package		cms
 * @author		Lucas Volgarini
 */
class Plano_model extends CI_Model {
    function __construct() {
        parent::__construct();
        $this->load->config('parametros');
    }

    /**
     * @access	public
     * @return	array
     */
    function getAllPlanosOrderByNome() {
        $this->db->order_by("nome ASC");
        return $this->db->get(self::TABLE);
    }

    function getAllPlanosOrderByPrioridade() {
        $this->db->order_by("prioridade ASC");
        $query = $this->db->get($this->config->item('dbCliente') . $this->config->item('tblPlano'));

        if ($query->num_rows() > 0) {
            return $query->result();
        } else {
            return null;
        }
    }

    /**
     * @access	public
     * @param	integer
     * @return	array
     */
    function getPlano($_id) {
        $this->db->where('id', $_id);
        $query = $this->db->get($this->config->item('dbCliente') . $this->config->item('tblPlano'));

        if ($query->num_rows() > 0) {
            return $query->row();
        } else {
            return null;
        }
    }

    /**
     * @access	public
     * @param	string
     * @return	array
     */
    function getPlanoByNome($_nome) {
        $this->db->where('nome', $_nome);
        return $this->db->get(self::TABLE);
    }

    function getPlanoByNomePrioridadeTempoValor($_nome, $_prioridade, $_tempo, $_valor) {
        $this->db->where('nome', $_nome);
        $this->db->where('prioridade', $_prioridade);
        $this->db->where('tempo', $_tempo);
        $this->db->where('valor', $_valor);
        return $this->db->get(self::TABLE);
    }

    /**
     * @access	public
     * @param	array
     * @return	void
     */
    function inserir($_array) {
        $this->db->insert(self::TABLE, $_array);
    }

    /**
     * @access	public
     * @param	integer
     * @param   array
     * @return	boolean
     */
    function atualizar($_id, $_array) {
        $this->db->where('id', $_id);
        $this->db->update(self::TABLE, $_array);
        return true;
    }

    /**
     * @access	public
     * @return	array
     */
    function getAllPlanosOrderById() {
        $this->db->order_by("id DESC");
        return $this->db->get(self::TABLE);
    }

}